// @author caoshi
// @date 2023/8/15 12:19
// @since 1.0
package main

import (
	"fmt"
	"io/ioutil"
	"os"
	"strings"
)

func main() {

	filePath := "E:\\aaa\\src"
	// 打开文件
	files, err := os.Open(filePath)
	if err != nil {
		fmt.Println("error opening direction ..", err)
	}
	defer files.Close()
	// 读取文件
	fileInfos, err := files.ReadDir(-1)
	if err != nil {
		fmt.Println("error reading direction ..", err)
	}

	for _, fileInfos := range fileInfos {
		//fmt.Println(fileInfos.Name())
		// 读取文件名
		oldFileName := fileInfos.Name()
		// 判断文件名是否以 "demo"开头
		if strings.HasPrefix(oldFileName, "demo") {
			// 读旧文件
			input, _ := ioutil.ReadFile(filePath + "\\" + oldFileName)
			// 从左侧修剪字符串 demo
			newFileName := strings.TrimLeft(oldFileName, "demo")
			// 写新文件
			_ = ioutil.WriteFile(filePath+"\\"+newFileName, input, 0666)
			// 删除旧文件
			_ = os.Remove(filePath + "\\" + oldFileName)
		}
	}

}
